Example embodiments relate to networks of server pools, such as call centers, for example.
In a network with server pools, a control strategy is often implemented. The control strategy may include a method of routing calls incoming to the network. A routing method applies to a network that may be flexible in the sense that service speed depends on a customer (e.g., request) type and the server pool where the customer is served. Types of requests may include calls requesting account transactions, loan applications and technical support, for example. In the art, request and customer may be used interchangeably. It should be understood that a customer may have multiple requests.
When a request is received (customer arrives) the routing method should route the received request when there are available servers in at least one pool.
A network where a customer's request is completed by a server and the customer then requires another service (e.g., another request) is referred to as a network with feedback. An example of a network with feedback is a network that allows a customer to check an account balance and then require another transaction, e.g., apply for a loan.
Conventional routing methods for networks with feedback require explicit a priori knowledge or explicit measurement of customer input flow rates, per each customer type. The input rate is used to explicitly solve an underlying optimization problem, which may be a linear program, for example. The solution to the linear program is then used to guide actual routing of customers to and between the servers.
The approach based on explicitly solving the linear program has high complexity and is not robust because different iterations of the linear program need to be performed when input rates change. Moreover, input rates are generally not known in advance and the times when they change are not known in advance. Thus, the linear programming approach does not respond quickly to sudden changes in input rates.